/**
 * Copyright (c) 2009 Collaborative Development Group, C.S. Dept., University of Bari
 *
 * All rights reserved. This program and the accompanying materials are made available under
 * the terms of the Eclipse Public License v1.0  which accompanies this distribution, and is 
 * available at http://www.eclipse.org/legal/epl-v10.html
 */
package it.uniba.di.cdg.penelope.ui.mvp.databinding;

import com.google.inject.ImplementedBy;


/**
 * Service to support databinding between a view and a presentation model: it wires fields in the view marked 
 * with {@link DataBind} to the presentation model.
 */
@ImplementedBy( EclipseDataBindingService.class )
public interface IDataBindingService {
	/**
	 * Setup databinding infrastructure between the view and the presentation model.
	 * @param view
	 * @param presentationModel
	 */
	void bind( Object view, Object presentationModel );
}
